using System.ComponentModel.DataAnnotations;

namespace Devonline.Core
{
    /// <summary>
    /// Specifies a message authentication algorithm to use for providing tamper-proofing
    /// to protected payloads.
    /// </summary>
    public enum ValidationAlgorithm
    {
        /// <summary>
        /// The HMAC algorithm (RFC 2104) using the SHA-1 hash function (FIPS 180-4).
        /// </summary>      
        [Display(Name = "SHA-1")]
        HMACSHA1,

        /// <summary>
        /// The HMAC algorithm (RFC 2104) using the SHA-256 hash function (FIPS 180-4).
        /// </summary>        
        [Display(Name = "SHA-256")]
        HMACSHA256,

        /// <summary>
        /// The HMAC algorithm (RFC 2104) using the SHA-512 hash function (FIPS 180-4).
        /// </summary>
        [Display(Name = "SHA-512")]
        HMACSHA512,
    }
}
